System and method for profile selection during fast retrain of a wideband modem

ABSTRACT

The present invention is directed to a system and method that efficiently, accurately, and quickly detects a suitable stored fast retrain profile to permit the resumption of ADSL communications in the presence of changing line conditions in a dual POTS/ADSL communications system. The method of the present invention is based on measuring the amplitude and phase of a few discrete multi-tone tones in the receiver portion of a communications system and recording the number of times a profile is selected to replace a preceding profile. Broadly, the system and method of the present invention are realized by a digital signal processor that is configured to detect a fast retrain request, select a suitable stored profile, and apply the parameters associated with the selected profile to configure the customer premises modem.

CROSS-REFERENCE TO RELATED APPLICATION

The present application claims the benefit of U.S. provisional patentapplication, Serial No. 60/113,921, filed Dec. 28, 1998, which is herebyincorporated by reference in its entirety.

BACKGROUND OF THE INVENTION

1. Field of the Invention

The present invention generally relates to communication systems, andmore particularly, to a system and method for profile selection duringfast retrain of digital subscriber line modems operating incommunication systems using the discrete multi-tone standard.

2. Discussion of the Related Art

In recent years, telephone communication systems have expanded fromtraditional plain old telephone system (POTS) communications to includehigh-speed data communications as well. As is known, POTS communicationsinclude the transmission of voice information, control signals, publicswitched telephone network (PSTN) information, as well as, informationfrom ancillary equipment in analog form (i.e. computer modems andfacsimile machines) that is transmitted in the POTS bandwidth.

Prompted largely by the desire of large businesses to reliably transferinformation over a broadband network, telecommunications serviceproviders have employed discrete multi-tone, hereinafter DMT, systems toprovide a plethora of interactive multi-media digital signals over thesame existing POTS twisted-pair lines. The provision of asynchronousdigital subscriber lines (ADSL) using DMT systems to customer premiseshas proliferated over recent years. Since ADSL signals are transmittedin a higher frequency band than that of the POTS frequency band,transmitting signals from both the POTS and ADSL frequency bands overthe same twisted-pair telephone line (even at the same time), generallyis not a problem. Specifically, the POTS frequency band is generallydefined from 0 Hz to 4 kHz, while ADSL frequency bands are generallydefined by a lower cutoff frequency of approximately 26 kHz, and anupper cutoff frequency of approximately 1 MHz.

In the past, a combination of circuits termed hybrids, and POTSsplitters have served to buffer ADSL equipment from distortions andinterference introduced in the ADSL frequency bands from the lowerfrequency POTS equipment. In a DMT-G.Lite standard configuration, thePOTS splitter is no longer present. As a result, POTS equipment operateson the same twisted-pair phone line that is being used to deliver ADSLservices. POTS equipment operating in this configuration is subject tointerference from low frequency harmonics generated within the ADSLequipment.

Conversely, and of greater significance, the presence of abrupt changesin line conditions due to ringing, customer premises noise, POTS handsetpick-up, and on/off-hook transitions from ancillary equipment, candisrupt ADSL transmissions. Splitterless operation of an ADSLcommunication system often incurs a significant and abruptinsertion-loss change upon the off-hook terminating impedance change ofthe POTS device. As a result, there is a need for a fast recoverymechanism to cope with POTS transients in the ADSL splitterless DMTcommunication system. DMT systems, by nature of their distributionacross multiple frequency bands, are capable of retuning devices tooptimize data transfer for changing line conditions. DMT devicesselectively transfer bits from the data stream in those discretefrequency bands that are uncorrupted from amplitude modulation radiointerference and unaffected by phone system bridge taps, thereby tuning,or maximizing performance under changing line conditions.

Tuning of DMT system parameters is currently performed in two distinctways:

initial training, hereinafter called “full retrain,” and bitloading/swapping, an online optimization procedure. Another oftensuggested means to retune a system is a fast retrain of the connection.A full retrain of the system connection results in a temporary loss ofservice and is undesirable under most conditions. Of the methods used totune DMT parameters, fast retrain is best suited to overcome transienteffects, while bit loading/swapping is more adapted to slowly varyingchanges. The fast retrain method is more robust than bitloading/swapping and provides for a more optimized system since it canactively readapt other system components such as equalizers andecho-cancelers to the system noise environment.

The fast retrain algorithm is triggered when either the central officeor the remote transmission unit sense the need to transition from thecurrent parameter profile to a more appropriate previously storedparameter profile. The most typical situation that triggers a fastretrain is when a POTS device goes on/off hook. These transitions createimpedance transients that adversely affect the ADSL frequency spectra.

In telephony, an off-hook condition exists when an operational telephoneinstrument is in use, i.e., during dialing or communicating. “Off-hook”originated from the description of the above condition when the handsetwas removed from the switchhook which connected the handset to the linewhen the switch was not depressed from the weight of the handset. Today,“off-hook” pertains to the operating state of a communications linkwherein data transmission is enabled for voice, data communications, ornetwork signaling.

On/Off-hook transitions have various effects on transmitted signals.Some of these effects are time dependent, others are time independent.In a first approximation, the following phenomena can be distinguished:attenuation of the received signal, phase of the received signal, timedependency of the impairments, increase in the noise level, and a DCsurge.

Fast retrain procedures are usually based upon stored profiles. It isassumed that previous full initialization procedures have beensuccessfully completed upon earlier off-hook and on-hook transitions ofPOTS equipment at the customer premises. If the full initializationprofile under such conditions has been stored in memory, a fast retraincan take advantage of that previous work by identifying current lineconditions, recognizing if a suitable profile exists in memory, andsimply recalling and applying the stored profile parameters.

Accordingly, it is desired to provide a system and method thatefficiently, accurately, and quickly detects a suitable stored fastretrain profile to permit the resumption of ADSL communications in thepresence of changing line conditions in a dual POTS/ADSL communicationssystem.

SUMMARY OF THE INVENTION

Certain objects, advantages and novel features of the invention will beset forth in part in the description that follows and in part willbecome apparent to those skilled in the art upon examination of thefollowing or may be learned with the practice of the invention. Theobjects and advantages of the invention may be realized and obtained bymeans of the instrumentalities and combinations particularly pointed outin the appended claims.

To achieve the objects and advantages of the present invention, thepresent invention is directed to a system and a method for the detectionand application of a suitable stored fast retrain profile for abroadband modem using the DMT communication standard. When a suitableprofile is not available or there is insufficient evidence to supportthe implementation of one of the stored profiles, a full systeminitialization procedure is triggered, skipping the fast retrainprocess.

The system and method of the present invention models on/off hooktransitions and establishes an array of possible profile states. Giventhe current profile, the probability of transitioning to any of thestored fast retrain profiles is calculated and the results transformedinto a probability distance between available profiles. Havingestablished a distance relationship modeling the probability ofselecting an appropriate profile, the decision process can beimplemented through any of a number of different distance criteria. Oncethe system has determined a suitable fast retrain profile exists and hasselected an appropriate profile, the stored profile parameters are usedto configure the modem.

DESCRIPTION OF THE DRAWINGS

The accompanying drawings incorporated in and forming a part of thespecification, illustrate several aspects of the present invention, andtogether with the description serve to explain the principles of theinvention. In the drawings:

FIG. 1 is a block diagram illustrating the delivery of multiplebroadband services via a communications system on a telephone line;

FIG. 2 is a block diagram further illustrating a communications systemin accordance with FIG. 1;

FIG. 3 is a block diagram of a system that illustrates the method stepsof a full initialization procedure whereby a system profile is stored;

FIG. 4 is a block diagram of a system that further illustrates themethod steps of FIG. 3;

FIG. 5 is a block diagram of a system that illustrates the method stepsrelated to a fast retrain selection of a stored system profile; and

FIG. 6 is a block diagram of a system that further illustrates themethod steps of FIG. 5.

DETAILED DESCRIPTION OF THE PREFERRED EMBODIMENT

Having summarized various aspects of the present invention, referencewill now be made in detail to the description of the invention asillustrated in the drawings. While the invention will be described inconnection with these drawings, there is no intent to limit it to theembodiment or embodiments disclosed therein. On the contrary, the intentis to cover all alternatives, modifications and equivalents includedwithin the spirit and scope of the invention as defined by the appendedclaims.

Turning now to the drawings, reference is made to FIG. 1 whichillustrates the delivery of broadband communication services via an ADSLover the POTS network. In this regard, a central office 10 is configuredto receive broadband services which it assembles via central office ADSLline cards 45 for transmission over a POTS phone line to a customerpremises 50. Examples of such broadband services are depicted asInternet 15, video conferencing 20, telephone services 25, movies ondemand 30, and broadcast media 35. Central office 10 assembles signalsfrom the aforementioned broadband services via mux 40 for appropriatetransformation and transmission by ADSL line cards 45.

Customer premises 50 has a compatible ADSL transmission unit 55, whichprocesses and distributes the several services to appropriatedestination devices such as a computer, television, and a telephone asillustrated. It is significant to note that customer premises 50 mayhave POTS devices such as the facsimile machine and another telephoneintegrated on the PSTN line along with ADSL transmission unit 55. On/offhook impedance transitions introduced by POTS devices such as thetelephone and the facsimile machine illustrated in FIG. 1 can interruptADSL communications that must traverse the same PSTN line. It should beunderstood that the circuitry conventionally implemented in, forexample, an ADSL transceiver will be included within ADSL line cards 45and ADSL transmission unit 55 as shown in FIG. 1. The implementation ofsuch circuitry will be appreciated by persons skilled in the art, andneed not be described herein.

Having provided a top level description of a communications systemconfigured to deliver a multitude of broadband services, reference isnow made to FIG. 2, which illustrates a portion of an ADSL line card 45and ADSL transmission unit 55 as shown in FIG. 1. In this regard, ADSLline card 45 contains an ADSL transmission unit—central office,hereinafter ATU-C 47. Similarly, ADSL transmission unit 55 contains anADSL transmission unit—remote, hereinafter ATU-R 57. Both ATU-C 47 andATU-R 57 serve to enable two-way communications between ADSL line card45 and ADSL transmission unit 55 via the PSTN. Since each ATU issimilarly configured, the description herein will address the fivefunctional blocks only once. Both ATU-C 47 and ATU-R 57 receive digitaldata in encoder 60. Encoder 60 processes the digital data and forwardsit to modulator 65 which adaptively applies the digital data across theDMT frequencies. Modulator 65 then forwards a multitude of designatedspread spectrum frequencies to hybrid 70 for data transmission along thePSTN line. In the manner described above, data is assembled, adaptivelyapplied, and transmitted from one ADSL device to another across each ofthe separate DMT channels as the physical characteristics of theenvironment surrounding each individual system allows.

Similarly, hybrid 70 is configured to receive a multitude of spreadspectrum frequencies from the remote ADSL transmission unit along thePSTN line. Hybrid 70 forwards designated spread spectrum frequencies todemodulator 75. Demodulator 75 processes the set of spread spectrumfrequencies to remove digital data. Demodulator 75 forwards the digitaldata to decoder 80. Decoder 80 processes the digital data anddistributes it to the appropriate broadband device.

In a communications system utilizing DMT, there are a variety of ADSLprotocols that serve to coordinate the functions of individual units inthe system. One such signal is the two tone signal, C_RECOV. Upondetection of a C_RECOV signal, ATU-R 57 configures itself for a fastretrain.

Fast retrain procedures assume that the communication system hassuitable memory, that the system has the capability of implementing afast retrain procedure, and that the system can implement a recognitiondevice for the stored profiles. More precisely, fast retrain proceduresrequire that off-hook and on-hook conditions have been encountered thathave triggered full retrains and that the system has found and stored inmemory a set of system parameters that permit successful datatransmission under such conditions. Fast retrain procedures furtherrequire the system to match the stored parameter sets with the presentline situation. That is, the system must have an algorithm that willselectively choose a stored profile that matches the current linesituation. If no profile matches the current situation, the system mustalso be able to trigger a full retrain of the system.

DMT standards currently support the storage of 16 profiles. The profilescontain B & G tables (bins or tones used and the power of each), forwarderror correction parameters R & S, interleaver depth, D, power spectraldensity level, and distinctive features that uniquely describe the linkstate to enable a simplified selection of a link state.

The system and method of the present invention will decide for a knownprofile once the adaptive gain controller (AGC) is trained. Systemprofiles are identifiable from the phase shift and amplitude changebetween pseudo-noise (PN) sequence Fourier coefficients stored in memoryand the current PN sequence symbol at the output of the AGC. The presentinvention will decide for an unknown profile if a threshold on the knownprofile device is exceeded.

Fast Retrain Computation During Full Initialization at Customer Premises

Reference is now made to FIG. 3, which illustrates a system thatperforms a full system initialization at customer premises 50 in orderto store a system profile. When central office 10 (see FIG. 2) commandsa full retrain of the communication system, analog front end 88 and adigital signal processor 90 within ATU-R 57 receive and process the fullretrain command. ATU-R 57 is located within xDSL transmission unit 55which was shown in FIGS. 1 and 2 at customer premises 50. Digital signalprocessor 90 can be configured to perform any of a number necessaryfunctions in order to coordinate the two-way transmission of broadbanddata in a DMT system. As illustrated in FIG. 3, the system of thepresent invention starts method 110 by initializing system variables instep 111. The system computes a mean PN symbol received from ATU-C 47(see FIG. 2) in step 115. Next, in step 119, the system stores the meanPN symbol computed in the previous step. The system proceeds bygenerating a PN sequence time domain symbol, X, in step 123. The systemcontinues the full retrain process by performing a bit loading procedurein step 124 whereby ATU-R 57 determines an efficient and effective meansof receiving the ADSL data stream across each of the spread spectrumfrequencies in the DMT communication system. Depending on lineconditions, external interference, and line attenuation over frequency,bits from the ADSL data stream are selected for application across theindividual tones. After selecting bit loading coefficients in step 124,the system stores the bit loading coefficients in step 125.

After retrieving the mean PN symbol from memory in step 127, the systemperforms a frequency domain multiplication of the mean PN symbol with atime domain PN sequence symbol, X, in step 131. The system furtheraligns the frequency domain symbol in step 135 by performing a timedomain peak detection of the delay and a delay shift. Next, the systemperforms a Fourier transform of the time domain symbol and stores theresult in step 139. In step 143, the system loads the bit loadingcoefficients previously stored in step 125. In step 147, the systemapplies the bit loading coefficients across select tones to generate anindex of the present system features. The system proceeds to create asystem profile by applying the Fourier transform result previouslystored in step 139 to the index of present system features generated instep 147. Profile generation, identification, and an update of aprobability matrix is accomplished in step 151. The system proceeds tostore the system features, the number of features, and the number ofprofiles stored in step 155.

The system then determines if the maximum number of stored profiles hasbeen reached in step 157. If the maximum number of stored profiles hasnot been reached, the system proceeds to step 165 where the profile isstored. If the maximum number of stored profiles has been reached, thesystem first selects the stored profile with the lowest probability ofoccurrence for replacement. Having selected the profile with the lowestprobability of occurrence, the system inserts the current profile intomemory in step 161. After replacing the lowest probability profile instep 161, the system proceeds to step 165 where the profile is stored.

Having selected a profile, the system applies the profile parameters andverifies the selected profile is suitable for ADSL data transmissionbefore signaling ATU-C 47 (see FIG. 2) that ATU-R 57 has successfullycompleted the full system initialization and is ready for datatransmission mode.

Having described the full initialization process at customer premises 50whereby a system profile is generated and stored at a high level,reference is now made to FIG. 4 which illustrates the fullinitialization process with further detail. As illustrated in FIG. 4,the system of the present invention starts method 210 by initializingsystem variables in step 211. While the PN sequence is being sent bycentral office 10, customer premises 50 averages the received symbols inthe time domain. During this time, customer premises 50 is quiet orsending one or more pilot tones. The ADSL standard PN sequence isgenerated by the following algorithm repeated for illustration:

d _(n)=1 for n=1,2, . . . 6

d _(n) =d _(n−5){circle around (+)}d _(n−6) for n=7, 8, . . . , 64

Bits d₁ to d₆ are reinitialized for each DMT symbol so that each PNsequence symbol uses the same data. The first pair of bits (d₁ and d₂)are used for the direct coupled and Nyquist sub-carriers. The powerassigned to these bits is zero. The following formula is used torecursively compute a mean received PN symbol in step 215:

μ_(n)=(1−α)μ_(n−1) +αV _(n),  Eq. 1

where α=1/N;μ₀=0; n=1, . . . N; and V_(n)=received symbol.

The algorithm proceeds as follows: μ_(n) is stored in memory in step219. Before the system transitions into data transfer mode, the systemgenerates a PN sequence time domain symbol, X, in step 223. Next, thesystem performs bit loading in step 224 and stores the bit loadingcoefficients in step 225. The system proceeds by recalling μ_(n) frommemory in step 227. A frequency domain multiplication of μ_(n) and X isperformed by a function called ALIGN in step 231 and followed by a timedomain peak detection of the delay and a delay shift in step 235. Next,the algorithm transforms the result from the time domain to thefrequency domain by applying a Fourier transform to y_aligned in step239.

The system proceeds by loading the B_(i) table in step 243. Next, instep 247, the system stores only the most descriptive features (selectedFourier coefficients) as follows: Indices_of_features=B_(i) table(max_used_tone—10: max_used_tone). Proceeding to step 251, the systemidentifies a system profile as follows:Features=Y_(f—)aligned(Indices_of_features). The system further providesan identifier for the profile and updates a transition probabilitymatrix in step 251. Next, the profile feature values, the number offeatures, and the number of available profiles are stored in step 255.

Upon a full initialization, if the maximum number of stored profiles isreached a new profile replaces the profile with the smallest probabilityvalue (profile least used). This occurs in step 261. If the maximumnumber of stored profiles is not reached by the system, the profile isstored in step 265.

Profile Selection During Fast Retrain at Customer Premises

Having described a system and method for generating and storing a systemprofile in FIGS. 3 and 4, reference is now made to FIG. 5, whichdescribes a system that performs a fast retrain at customer premises 50.When either the central office 10 (see FIG. 2) or customer premises 50senses a problem with the upstream or downstream data links, eitherportion of the system can request a fast retrain of the communicationsystem. Upon initiating or receiving a request for a fast retrain fromthe ATU-C 47 (see FIG. 2), analog front end 88 and a digital signalprocessor 90 within ATU-R 57 receive and process the fast retraincommand. ATU-R 57 is located within xDSL transmission unit 55 which wasshown in FIGS. 1 and 2 at customer premises 50. Digital signal processor90, within ATU-R 57, can be configured to perform any of a numbernecessary functions in order to coordinate the two-way transmission ofbroadband data in a DMT system. As illustrated in FIG. 5, the system ofthe present invention starts method 310 by reducing the transmit powerat customer premises 50 by 9 dB in step 311. The system loads the numberof profiles previously stored in step 315. Next, in step 319, the systemdetermines if the number of features in the stored profiles is greaterthan 1. If the number of stored features is 1 or less, the systemdecides for a full initialization and step 323 triggers a fullinitialization as previously illustrated in FIG. 3. Otherwise, thesystem proceeds to step 327 where the AGC is trained and timing recoveryis performed for a predetermined number of PN sequence symbols.

The system proceeds by generating a reference PN sequence time domainsymbol in step 335. In step 339, the system aligns the received meansymbol with the reference PN sequence time domain symbol generated instep 335. Next, the system performs a Fourier transform on the result instep 143. The system loads the stored profiles, the number of storedprofiles, and loads the transition probability matrix in step 347. Aftercomputing the distance from the present system profile to all storedprofiles in step 353, the system identifies the closest profile in step357.

If the closest profile fails to meet or exceed the reject criteria forselecting a profile in step 361, the system decides for and triggers afull initialization of the system in step 365. Otherwise, the chosenprofile is loaded in step 369 and applied to the system in step 373.After application of the selected profile, the system verifies that thedata rate and signal to noise ratio (SNR) is acceptable in step 377. Ifthe selected profile fails to meet the acceptance thresholds of step377, the system triggers a full initialization in step 365. If theapplied profile results in acceptable system data rate and SNR, thetransition probability matrix is updated in step 381.

Having selected, applied, and verified a profile, the system signalsATU-C 47 (see FIG. 2) that ATU-R 57 has successfully completed the fastretrain of the system and is ready for data transmission mode.

The following steps illustrated in FIG. 6 further detail the method ofprofile selection during a fast retrain procedure at customer premises50 as illustrated in FIG. 5. Upon an event that triggers a fast retrain,fast retrain method 410 is initiated and in step 411, customer premisestransmit power is reduced by 9 dB. The method, loads the number ofavailable pre-stored profiles from memory in step 415. The fast retrainprocedure checks the quantity of features stored with the profile instep 419. If the number of features in the stored profile is greaterthan 1, the method decides for a fast retrain. Otherwise, the methoddecides for a full initialization in step 423.

If fast retrain is selected, the method performs step 427 where the AGCis trained for MPN sequence symbols, and timing recovery for N PNsequence symbols is performed. In step 431, the method averages thereceived symbols in the time domain. The method then proceeds togenerate X, a PN sequence time domain symbol of size and sampling equalto μ_(n), in step 435. Next, in step 439, the method aligns the receivedaverage symbol to the reference symbol. ALIGN computes thecrosscorrelation function in the frequency domain. The maximum value ofthe time domain crosscorrelation function yields the delay. Then ALIGNshifts the mean symbol by the delay time.

The algorithm of the present method then transitions to the frequencydomain by computing Y_(f—)aligned=FFT(y_aligned) in step 443. Next, instep 447, the method compares features from the mean received symbol tofeatures from the profiles pre-stored in memory using priorprobabilities stored in the transition matrix. The method proceeds tocompute the distance to all stored profiles in step 453 and proceed toprofile selection according to predefined rules and priors in step 457.

At this point, the method performs a threshold verification of thedistance from the previous system profile and the selected profile. Ifthe distance exceeds a predetermined threshold in step 461, the methoddecides for a full initialization of the system and proceeds to step 465where the method triggers the full initialization process illustrated inFIG. 4. If the distance between the previous profile and the selectedprofile is less than the threshold of step 465, the method loads thechosen profile in step 469 and applies the chosen profile to the systemin step 473.

The system is configured in step 473 as follows, the method loads andtrains the time domain equalizer (TEQ), echo canceler (EC), andfrequency domain equalizer (FEQ) using the chosen profile as an initialstate. The method performs bit loading across the spread spectrumfrequencies with the chosen profile. Next, the method adjusts the powerlevel with the chosen profile and sets the Interleaver depth.

After configuring the system with the selected profile parameters as perthe steps above, the method evaluates the data rate and SNR of thesystem using the updated profile in step 477. If acceptable, the methodadjusts prior probabilities in the transition probability matrix in step481. If the recorded data rate and SNR of the system are not acceptable,the method proceeds to step 465 where the method triggers a fullinitialization of the system. After successful completion of the methodillustrated in FIG. 6, ATU-R 57 signals ATU-C 47 to enter data transfermode.

Bayes' Theorem

To improve the recognition process, a Bayesian approach is used. Bayestheorem provides a means for incorporating new data with givenprobability information. This is useful for combining experimental,survey, and judgment data. The Bayesian approach provides the means andencouragement for improving probability estimates by implicitlyrecognizing the variability of the probability estimates themselves.Accurate estimates of parameters require large amounts of data. Errorsof estimation are unavoidable. In the classic approach, confidenceintervals are used to express the degree of expected errors. Whenobserved data are limited, in order to obtain an acceptable confidencelevel, statistical estimates have to be supplemented or superseded byjudgmental information.

Given that an event that may have been the result of any two or morecauses has occurred, a question arises as to the probability that theevent was the result of a particular cause. Inverse probabilityaddresses the question. The fundamental theorem of inverse probabilityis Bayes' Theorem, which is given below for a discrete case:$\begin{matrix}{{p{\langle\left. A_{j} \middle| B \right.\rangle}} = {\frac{p{\langle\left. B \middle| A_{j} \right.\rangle}p{\langle A_{j}\rangle}}{\sum\limits_{j}\quad {p{\langle\left. B \middle| A_{j} \right.\rangle}p{\langle A_{j}\rangle}}}.}} & {{Eq}.\quad 2}\end{matrix}$

The formula illustrates that given that an event B has occurred, theprobability that it was due to cause A_(j) is equal to the probabilitythat A_(j) should produce the event times the probability that A_(j)should occur in the first place, divided by a scaling factor that isequal to the sum of all such terms for all js.

The special situation where all A_(j) are equally likely is found bysetting all p(A_(j)) equal to each other. Then p(A_(j)) factors out ofthe denominator and cancels the term in the numerator, and the result isthe formula without p(A_(j)) terms.

The system and method of the present invention will take advantage ofprior knowledge of telecommunications systems to reduce the probabilityof choosing an incorrect profile. Using this approach, furtherimprovements can be made as knowledge of the system becomes available.With three independent facts A₁, A₂, and A₃, the probability of allthree occurring is as follows:

p<A ₁ A ₂ A ₃ >=p<A ₃ |A ₁ A ₂ >p<A ₂ |A ₁ >p<A ₁>.  Eq. 3

Modeling On/Off Hook Transition Probabilities

Considering four devices on a telephone line, 16 states can be labeledby four digits (one for each device). When a device is “on,” the digitfor that device is set to 1; when a device is “off,” the digitrepresenting the device is 0. Four devices that are “off” will bemodeled by 0000, while if all four devices are “on,” the line state ismodeled by 1111. For purposes of the present invention, it is assumedthat it is nearly impossible for any two of the four devices to go“on/off” hook at the same time. Further, it is assumed that theprobability of future transitions towards “on” or “off” is directlyrelated to the previous transition. That is, a device that is “off hook”will most likely transition to “on hook” and vice-versa. The system andmethod of the present invention also assume that the more devices areoff hook, the worse will be the quality of transmission. When theseconditions exist, the end user will be aware of the degradation relatedto operating more than one piece of equipment simultaneously on the lineand therefore will gravitate towards use of only one device wheneverpossible. As a result, 0s are more probable than 1s in the model.Furthermore, starting from any configuration of four digits, it is notpossible to reach in one step any other configuration of four digits.This would mean that two or more devices had gone on/off hooksimultaneously. For example, it is not possible to transition from 1111to 0011. If all transitions are not to be considered, this means sometransitions will never occur in the model.

Given these assumptions, it is clear that the probability oftransitioning from state 1111 to state 1011, is not equal to theprobability of transitioning from 1011 to 1111. Indeed, the time adevice stays idle is not correlated with the time it runs, as a devicemay stay idle for a long time and run for only a short time. Theseassumptions enable a model of the on/off hook phenomenon with Bayes'formula.

The system and method of the present invention assumes that allinformation needed to decide for a specific profile is included in areceived PN sequence frequency domain symbol. The system keeps track ofthe preceding profile and computes the probability of reaching asubsequent profile among the stored possible profiles. If k is thecurrent profile; k−1 is the previous profile; and v is the current PNsequence frequency domain symbol, we know from Bayes' Theorem that theprobability is given as follows:

p<v,k,k−1>=p<v|(k,k−1)>p<k|k−1>p<k−1>.  Eq. 4

The three separate probabilities on the right side of Equation 4 can besimplified as explained below. P(v|k,k−1) is modeling the dispersion ofthe received PN sequence symbol around its prototype. This probabilityis independent of the previous profile, k−1, and relies only upon thecurrent profile, k. So this factor can be simplified as follows:

P<v|k,k−1>=P<v|k>.  Eq. 5

Assuming a Gaussian distribution of each specific Fourier coefficient ofthe received PN sequence, P<v|k> can be modeled as: $\begin{matrix}{{N\left( {v,\mu,K} \right)} = {\frac{1}{\sqrt{{\left( {2\pi} \right)^{N}}_{\quad}\det \quad K}}{{\exp \left( {{- \frac{1}{2}}\left( {v - \mu} \right)^{T}{K^{- 1}\left( {v - \mu} \right)}} \right)}.}}} & {{Eq}.\quad 6}\end{matrix}$

Where μ is the mean and K the covariance of a specific Fouriercoefficient of the received PN sequence. Since we are interested not inthe true probability, only in the making of a decision, we willtransform the true probability solution into a generalized distance inthe Bayesian space. Monotonic mapping will not change the order in thegeneralized distance space, so multiplying by a scalar or mapping with alog function will not affect the decision process. Since, P<k−1>, theprobability of the previous profile, is the same for all currentprofiles, it is possible to just eliminate it from the decision process,yielding: $\begin{matrix}{{{d_{k}(v)} = {\frac{1}{\sqrt{\left( {2\pi} \right)^{N}\quad \det \quad K}}{\exp \left( {{- \frac{1}{2}}\left( {v - \mu} \right)^{T}{K^{- 1}\left( {v - \mu} \right)}} \right)}P{\langle\left. k \middle| {k - 1} \right.\rangle}}},} & {{Eq}.\quad 7}\end{matrix}$

Multiplying Equation 7 by {square root over ((2π)^(N))} will not affectthe decision and further simplifies Equation 7. $\begin{matrix}{{{d_{k}(v)} = {\frac{1}{\sqrt{\det \quad K}}\exp \quad \left( {{- \frac{1}{2}}\left( {v - \mu} \right)^{T}{K^{- 1}\left( {v - \mu} \right)}} \right)P{\langle\left. k \middle| {k - 1} \right.\rangle}}},} & {{Eq}.\quad 8}\end{matrix}$

Mapping Equation 7 with a monotonic function also will not affect thedecision. $\begin{matrix}{{{d_{k}(v)} = {{\log \quad \left( \frac{P{\langle\left. k \middle| {k - 1} \right.\rangle}}{\sqrt{\det \quad K}} \right)} - {\frac{1}{2}\left( {v - \mu} \right)^{T}{K^{- 1}\left( {v - \mu} \right)}}}}{{k = 1},2,\ldots \quad,N}} & {{Eq}.\quad 9}\end{matrix}$

${{{If}\quad {Prior}_{k}} = {{\log \quad \left( \frac{P{\langle\left. k \middle| {k - 1} \right.\rangle}}{\sqrt{\det \quad K_{k}}} \right)\quad {and}\quad {likelihood}_{k}} = {Q_{k} = {\frac{1}{2}\left( {v - \mu_{k}} \right)^{T}{K_{k}^{- 1}\left( {v - \mu_{k}} \right)}}}}},$

where k=1, 2, . . . , N.

We have,

d _(k)(v)=Prior_(k)−likelihood_(k)  Eq. 10

The decision is then made by using a maximum distance classifier asfollows:

if d _(k)(v)=Max_(k) d(v)and d _(k)(v)>β, Decide for k: otherwisereject.  Eq. 11

This distance is comprised of two terms. The first term does not dependon v, the current signal, and therefore may be computed once, for all kat initialization. The numerator of the first term P<k|k−1)> is a prior,while detK is a noise term. An estimator for the prior is used.

When the necessity for fast retrain is detected, the modem will have thechoice between a certain number of profiles available in memory. Thecurrent standard sets this number of stored profiles at 16. In order forthe fast retrain algorithm to minimize the probability of error whenchoosing a new profile, data can be stored that will help the modemdetermine the most likely transitions from the current state.

The objective is to guess probabilities of transition from profile S_(i)to profile S_(j) from the total number of N_(ij) of such transitions andthe total number N_(i) of transitions from profile S_(i) to all otherrecognized profiles. A basic approach would suggest an estimator of theprobability P_(ij) of transition from profile S_(i) to profile S_(j):$\begin{matrix}{{\hat{P}}_{ij} = {\frac{N_{ij}}{\sum\limits_{j = 1}^{N_{p}}\quad N_{ij}} = {\frac{N_{ij}}{N_{i}}.}}} & {{Eq}.\quad 12}\end{matrix}$

However, implementation of this formula is limited in practice as itprovides a zero transition probability to transitions that have neveroccurred. Those transitions would never be selected by the presentinvention if they were given a zero probability of transition.

If S_(i) and S_(j) are recognized profiles, if a transition from profileS_(i) to profile S_(j) has never been recorded, and if N_(i) is thetotal number of transitions with parent state S_(i), then theprobability of transition from profile S_(i) to profile S_(j) is:$\begin{matrix}{P_{ij} = {\frac{1}{2}{N_{i}.}}} & {{Eq}.\quad 13}\end{matrix}$

If a rigorous approach is required, the calculation of a confidenceinterval for {circumflex over (P)}_(ij), the estimator of P_(ij), can beeasily accomplished. It suffices to use the center of the interval as anestimate of the probability of an event that has never occurred. Thus,what is needed is a simple and effective estimator for P_(ij).

Information concerning transition probabilities can be stored in variousways. The system and method of the present invention uses a countermatrix where element N_(ij) represents the total number of transitionsbetween state i and state j. In order to set the estimator at the centerof the interval, N_(ij) are set to ¼ for all transitions that have neverbeen recorded. At all times, the transition counter matrix is a squaresub-matrix of a 16×16 array. All elements of the array, that are not inthe transition counter matrix are set to 0.

When the first state is encountered, the 1,1 element is set to 0.5. Thatis, N₁₁=½. When a new profile is detected, if S_(p) is the parentprofile, and NP is the new number of available profiles, a NP^(th) rowand a NP^(th) column are added to the matrix. All values in the new rowand column are set to 0.25, except element N_(p),NP, that is set to 1.

N _(ij)=0.5i=NP,1<j<NPN _(ij)=0.5j=NP,1<j<NP,j≠pN _(p) ,NP=1

$N = \left( \quad \begin{matrix}N_{11} & N_{12} & N_{13} & 1 & 0 & 0 & 0 & 0 & 0 & 0 & 0 & 0 & 0 & 0 & 0 & 0 \\N_{21} & N_{22} & N_{23} & 0.5 & 0 & 0 & 0 & 0 & 0 & 0 & 0 & 0 & 0 & 0 & 0 & 0 \\N_{31} & N_{32} & N_{33} & 0.5 & 0 & 0 & 0 & 0 & 0 & 0 & 0 & 0 & 0 & 0 & 0 & 0 \\0.5 & 0.5 & 0.5 & 0.5 & 0 & 0 & 0 & 0 & 0 & 0 & 0 & 0 & 0 & 0 & 0 & 0 \\0 & 0 & 0 & 0 & 0 & 0 & 0 & 0 & 0 & 0 & 0 & 0 & 0 & 0 & 0 & 0 \\0 & 0 & 0 & 0 & 0 & 0 & 0 & 0 & 0 & 0 & 0 & 0 & 0 & 0 & 0 & 0 \\0 & 0 & 0 & 0 & 0 & 0 & 0 & 0 & 0 & 0 & 0 & 0 & 0 & 0 & 0 & 0 \\0 & 0 & 0 & 0 & 0 & 0 & 0 & 0 & 0 & 0 & 0 & 0 & 0 & 0 & 0 & 0 \\0 & 0 & 0 & 0 & 0 & 0 & 0 & 0 & 0 & 0 & 0 & 0 & 0 & 0 & 0 & 0 \\0 & 0 & 0 & 0 & 0 & 0 & 0 & 0 & 0 & 0 & 0 & 0 & 0 & 0 & 0 & 0 \\0 & 0 & 0 & 0 & 0 & 0 & 0 & 0 & 0 & 0 & 0 & 0 & 0 & 0 & 0 & 0 \\0 & 0 & 0 & 0 & 0 & 0 & 0 & 0 & 0 & 0 & 0 & 0 & 0 & 0 & 0 & 0 \\0 & 0 & 0 & 0 & 0 & 0 & 0 & 0 & 0 & 0 & 0 & 0 & 0 & 0 & 0 & 0 \\0 & 0 & 0 & 0 & 0 & 0 & 0 & 0 & 0 & 0 & 0 & 0 & 0 & 0 & 0 & 0 \\0 & 0 & 0 & 0 & 0 & 0 & 0 & 0 & 0 & 0 & 0 & 0 & 0 & 0 & 0 & 0 \\0 & 0 & 0 & 0 & 0 & 0 & 0 & 0 & 0 & 0 & 0 & 0 & 0 & 0 & 0 & 0\end{matrix}\quad \right)$

When recording a transition from profile S_(p) to profile S_(c), theN_(p), c coefficient should be update as follows:

N _(pc) =N _(pc)+1.  Eq. 14

From the counter matrix, estimators of the transition probabilities canreadily be calculated: $\begin{matrix}{{P_{ij} = \frac{N_{ij}}{\sum\limits_{j = 1}^{NP}\quad N_{ij}}},} & {{Eq}.\quad 15}\end{matrix}$

where NP is the number of available profiles at the time of the fastretrain. This formula implies the computation of 1/denominator, Thiscould be computed once per fast retrain by a coordinate RotationalDigital Computer (CORDIC) algorithm (one cycle per bit precision). Thus,this computation is unnecessary as it is just a normalizing factor thatdoes not change the order.

Upon encountering an overflow, the entire matrix is divided by 2. Asdescribed thus far, the learning algorithm suffers from one drawback. Astime passes, probabilities in the matrix will increase, making itextremely difficult for a new configuration to emerge, that is, obtain avery high probability of occurrence. This drawback will limit the modelfor customers who replace or add POTS equipment. The problem will beacute for customers who add a frequently used POTS device.

A solution to the learning problem described above is to storetransition information in a first in first out (FIFO) buffer. The FIFOwould allow a system with limited memory as it would only store thelatest transitions. Storing each transition requires 8 bits. As aresult, a system with a memory of 2 months requiring 20 fast retrains aday will require 1,200 bytes of storage. If 1,200 bytes of memory ormore is available, the following steps should be introduced:

(i,j)=read(FIFO)

write( FIFO,(p,c))

N_(pc)=N_(pc)+1

N_(ij)=N_(ij)−1

Recalling that the decision function of the present invention is amaximum distance classifier, there are many different ways to implementa rejection process for this type of classifier. For example, thedecision process can be decided based on: a maximum criterion; adifference criterion; a radius criterion; and a nearest neighborcriterion.

A maximum criterion implements the Bayes' Theorem as follows:

Max_(k) d(v)=β.  Eq. 16

The minimum effective threshold is 1/K where K is the number of classes.It is important to note that if the minimum of the components ofd_(k)(v) are checked, the device will be more robust against unknownprofiles.

A Difference criterion can be implemented as follows:

Max_(k) d(v)−secondMax_(k) d(v)<β,  Eq. 17

once again, if the components of d_(k)(v) are checked, the device willbe more robust against unknown profiles.

A radius criterion can be implemented as follows:

r _(min) ²>β,  Eq. 18

where r² is the minimum among the squared distances between d(v) and theprototype vectors.

There are two alternative methods to compute the distance under anearest neighbor criterion. The first uses the vector of the Fouriercoefficients. The second makes a decision on each Fourier coefficientone at a time. In the first case, μ is a vector and K is a matrix. Inthe second case, μ and K are scalars.

In the scalar case, the decision function D(i) is computed for each pFourier coefficient in the feature vector F of Fourier Coefficients ofdimension P (p=1, 2, . . . , P). Typically, P=10. The class with themaximum weighted distance D(i) for this Fourier coefficient is stackedin a result vector R of dimension P. $\begin{matrix}{{D_{i} = {{Max}_{k}\left( {{{- \frac{1}{2}}\log \quad \left( {{var}\quad \left( {prototype}_{k} \right)} \right)} - {\frac{1}{2}d_{ij}} + {\log \left( P_{ij} \right)}} \right)}}{{j = 1},\ldots \quad,16}} & {{Eq}.\quad 19} \\{R = {\sum\limits_{i = 1}^{P}\quad {D_{i}.}}} & {{Eq}.\quad 20}\end{matrix}$

The result vector, R, yields a series of decisions that may becontradictory. To assess this result vector, a rejection device issuggested. In the vector case, only one decision is suggested. In orderto have more than one decision suggested, which provides a more robustdevice, the PN symbol sequence can be split into more than oneindependent data set and a generalized distance from each data set canbe computed. The results can then be placed in a resultant vector, R, ofdimension, P (P= number of independent data sets). The class mostrepresented in the resultant vector represents the profile that will beloaded. For ten Fourier coefficients, the class vector stacking couldlook like the following:

On this particular vector, class 3 occurs six times. Class 3 would bethe winning class and the associated profile would be loaded into thesystem. If the most represented class occurs less than half of the timesin the vector, the decision is a reject (see step 461 in FIG. 6), and afull system initialization is triggered. This would be the case in theexample above if class 3 occurred only 4 times in the 10 slot vector,and if no other class occurred with a greater frequency than class 3.

In this regard, the embodiment or embodiments discussed herein werechosen and described to provide the best illustration of the principlesof the invention and its practical application to thereby enable one ofordinary skill in the art to utilize the invention in variousembodiments and with various modifications as are suited to theparticular use contemplated. All such modifications and variations arewithin the scope of the invention as determined by the appended claimswhen interpreted in accordance with the breadth to which they are fairlyand legally entitled.

What is claimed is:
 1. A digital signal processor for performing profileselection during a fast retrain of a wide band modem in a discretemulti-tone (DMT) communication system comprising: means to store systemprofiles following successful system initializations; means to generate,identify, and store a current system profile; means to record the numberof times a previously stored system profile is successfully selected toreplace the current profile to create a transition probability matrix;means to generate and store a temporary system profile; means forcomparing and selecting the previously stored system profile with thehighest probability of resulting in a successful fast retrain; means forapplying the selected previously stored system profile to the system;and means to adjust the transition probability matrix; wherein the meansto generate, identify, and store a current system profile isaccomplished by an average received pseudo-noise symbol.
 2. The digitalsignal processor of claim 1, wherein the average received pseudo-noisesymbol is computed for a select subset of the downstream signal tones.3. The digital signal processor of claim 1, wherein the average receivedpseudo-noise symbol is computed for a predetermined number of samples.4. The digital signal processor of claim 1, wherein the current systemprofile is identified by Fourier coefficients.
 5. The digital signalprocessor of claim 4, wherein the current system profile is identifiedby a select subset of the Fourier coefficients.
 6. The digital signalprocessor of claim 5, wherein the means to selectively reject theselected system profile with the highest probability of success isaccomplished by creating a result vector, the result vector consistingof the results from a decision function applied to each Fouriercoefficient in the selected system profile.
 7. The digital signalprocessor of claim 6, wherein a decision to reject the selected systemprofile is determined by selecting a class with the highest frequency inthe result vector and determining if the selected class occurs more thana predetermined number of times in the result vector.
 8. A digitalsubscriber line transmission unit using the discrete multi-tonecommunication standard configured to adaptively select and apply asystem profile during a fast retrain comprising: an analog front end,said analog front end operative to receive a multicarrier input signaland transmit a multicarrier output signal for communication to a remotedigital subscriber line transmission unit through the public switchedtelephone network; a memory device operative to store a transitionprobability matrix and a multiplicity of system profiles; and a digitalsignal processor, said digital signal processor operative to perform afull system initialization, store the resulting system profile in thememory device following successful system initializations, and updatethe transition probability matrix, said digital signal processorresponsive to a request to perform a fast retrain of the transmissionunit, wherein the fast retrain consists of identifying a current systemprofile, selecting a previously stored system profile with the highestprobability of successfully configuring the transmission unit given thecurrent system profile, applying the selected system profile andupdating the transition probability matrix; wherein the digital signalprocessor generates, identifies, and stores a current system profile byaveraging a received pseudo-noise symbol.
 9. The digital subscriber linetransmission unit of claim 8, wherein the received pseudo-noise symbolis computed for a select subset of downstream signal tones.
 10. Thedigital subscriber line transmission unit of claim 8, wherein thereceived pseudo-noise symbol is computed for a predetermined number ofsamples.
 11. The digital subscriber line transmission unit of claim 8,wherein the current system profile is identified by Fouriercoefficients.
 12. The digital subscriber line transmission unit of claim11, wherein the digital signal processor is configured to selectivelyreject the selected system profile with the highest probability ofsuccess by creating a result vector, the result vector consisting ofresults from a decision function applied to each Fourier coefficient inthe selected system profile.
 13. The digital subscriber linetransmission unit of claim 12, wherein the digital signal processorrejects the selected system profile by selecting a class with thehighest frequency in the result vector and determining if the selectedclass occurs more than a predetermined number of times in the resultvector.
 14. A method for adaptively selecting and applying a systemprofile during a fast retrain of a digital subscriber line transmissionunit using the discrete multi-tone communications standard comprising:storing system profiles following successful system initializations;generating, identifying, and storing a current system profile; recordingthe number of times a previously stored system profile is successfullyselected to replace the current profile to create a transitionprobability matrix; generating and storing a temporary system profile;comparing and selecting the previously stored system profile with thehighest probability of resulting in a successful fast retrain; applyingthe selected previously stored system profile to the system; andadjusting the transition probability matrix; wherein the step ofgenerating, identifying, and storing a current system profile isaccomplished by an average received pseudo-noise symbol.
 15. The methodof claim 14, wherein the average received pseudo-noise symbol iscomputed for a select subset of the downstream signal tones.
 16. Themethod of claim 14, wherein the average received pseudo-noise symbol iscomputed for a predetermined number of samples.
 17. The method of claim14, wherein the current system profile is identified by Fouriercoefficients.
 18. The method of claim 17, wherein selectively rejectingthe selected system profile with the highest probability of success isaccomplished by creating a result vector, the result vector consistingof the results from a decision function applied to each Fouriercoefficient in the selected system profile.
 19. The method of claim 18,wherein a decision to reject the selected system profile is determinedby selecting a class with the highest frequency in the result vector anddetermining if the selected class occurs more than a predeterminednumber of times in the result vector.